<?php
defined("__HVE") or die("<tt>HansVon Engine</tt>");
/* ///////////Developed By
  _   _       ___   __   _   _____        _     _   _____   __   _  
 | | | |     /   | |  \ | | /  ___/      | |   / / /  _  \ |  \ | | 
 | |_| |    / /| | |   \| | | |___       | |  / /  | | | | |   \| | 
 |  _  |   / / | | | |\   | \___  \      | | / /   | | | | | |\   | 
 | | | |  / /  | | | | \  |  ___| |      | |/ /    | |_| | | | \  | 
 |_| |_| /_/   |_| |_|  \_| /_____/      |___/     \_____/ |_|  \_| 
*/
//  //     Manejador de Seguridad para Login
///////////////////////////////////////////////////////////////////
//  //       Autor : Hans Von Herrera Ortega
//  //     Versión : 1.0
//  //      Bugs a : seguridad.php@gmail.com
/* Características.
	Constante: Entropia <- '#{{(^.^)}}#'
	Objeto->Matriz: $_I->M['alert_1'] <- 'Incorrect username or password, try again.'
	Objeto->Matriz: $_I->M['alert_2'] <- 'Your session has expired, please login again.'
*/
if(isset($_POST['usuario'], $_POST['clave'])){
	 if(((strlen($_POST['usuario'])+strlen($_POST['clave']))) > 60) die;
// Autenticar por formulario
	$usuario=CLR($_POST['usuario']);
	$clave=sha1(Entropia.$_POST['clave']);
	$msj_error=$_I->M['alert_1'];
}else if(!empty($_COOKIE['usuario']) && !empty($_COOKIE['GUID'])){
	 if(((strlen($_COOKIE['usuario'])+strlen($_COOKIE['GUID'])))>50) die;
// Autenticar por cookie
	$usuario=CLR($_COOKIE['usuario']);
	$clave=CLR($_COOKIE['GUID']);
	$msj_error=$_I->M['alert_2'];
}
if(isset($usuario,$clave)){
	$Login=$SQL->fila("
		SELECT *
		FROM usuarios
		WHERE USUARIO='".$usuario."'
	");
	if(isset($Login->USUARIO,$Login->CLAVE)){
		# Verifica si la contraseña es correcta por cualquiera de los medios utilizados
		if(isset($Login->CLAVE) && (($Login->CLAVE==$clave) or sha1(AnioMes.$Login->CLAVE)==$clave)){
			//print_r($Login);
			define('_Secure_','INTO');
			$tiempo_cookie=(($Login->AUTO_LOGIN=='Activo')?(time()+$Login->TIEMPO_LOGIN):0);#Caducidad y AutoLogin
			setcookie ('usuario',$Login->USUARIO,$tiempo_cookie);	#86400
			setcookie ('GUID',sha1(AnioMes.$Login->CLAVE),$tiempo_cookie);  
			$GLOBALS['U']=$Login;
			unset($msj_error,$Login);
		}else{
			# Error en la contraseña
			setcookie("usuario");
			setcookie("GUID");
		}
	}
}
if(isset($_GET['salir'])){
	if(XSRF("index.php")){
		setcookie("usuario");
		setcookie("GUID");
		header("Location: index.php");
	}
}